<template>
  <ul class="my_list">
     <li v-for="(item,index) in childList" :key="index">
        <img :src="item.author.avatar_url" alt="">
        <section>
          <p>{{item.title}}</p>
          <p>
            <span>{{item.reply_count}}/{{item.visit_count}}</span>
            <span class="time">{{timeFilter(item.create_at)}}</span>
          </p>
        </section>
     </li>
  </ul>
</template>

<script>
import { ref, reactive, toRefs } from "vue";
export default {
  props:{
    childList: Array
  },
  setup() {
    const timeFilter = (val) => {
    //   console.log(val);
      let result;
      let timePublish = new Date(val); // 传入的时间
    //   console.log(timePublish);
      let timeNow = new Date(); // 现在的时间
      let minute = 1000 * 60;
      let hour = minute * 60;
      let day = hour * 24;
      let month = day * 30;
      let year = month * 12;
      let diffValue = timeNow - timePublish; // 时间相差的值，是毫秒
      let diffMonth = diffValue / month;
      let diffWeek = diffValue / (7 * day);
      let diffDay = diffValue / day;
      let diffHour = diffValue / hour;
      let diffMinute = diffValue / minute;
      let diffYear = diffValue / year;
      if (diffValue < minute) {
        result = "刚刚";
      } else if (diffYear > 1) {
        result = parseInt(diffYear) + "年前";
      } else if (diffMonth > 1) {
        result = parseInt(diffMonth) + "月前";
      } else if (diffWeek > 1) {
        result = parseInt(diffWeek) + "周前";
      } else if (diffDay > 1) {
        result = parseInt(diffDay) + "天前";
      } else if (diffHour > 1) {
        result = parseInt(diffHour) + "小时前";
      } else if (diffMinute > 1) {
        result = parseInt(diffMinute) + "分钟前";
      } 
      return result;
    }
    return {
      timeFilter
    }
  },
};
</script>
<style lang="scss" scoped>
.my_list{
  li{
    display: flex;
    align-items: center;
    padding: 10px;
    font-size: 14px;
    background: #fff;
    border-bottom: 1px solid #ccc;
    img{
      width: 30px;
      height: 30px;
    }
    section{
      margin-left: 10px;
      flex: 1;
      p{
        width: 300px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
      }
      .time{
          float: right;
      }
    }
  }
}
</style>